<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        /* 
            数组常用方法演示
            1.concat方法
         */

        /*   const array1 = ['a', 'b', 'c'];
          const array2 = ['d', 'e', 'f'];
          const array3 = ['d', 'e', 'f'];
          const array4 = array1.concat(array2,array3);

          console.log(array4); */


        // const array1 = ['a', 'b', 'c', 'd', 'e'];
        /* 
            注释：
                1.target:需要被替换的目标索引
                2.start：替换的开始位置
                3.end：替换的结束位置
         */
        // console.log(array1.copyWithin(0, 3, 4));


        /* 
                1.target:需要被替换的目标索引
                2.start：替换的开始位置
                3.end（未指定）：默认就是到数组结束的位置
         */
        // console.log(array1.copyWithin(1, 3));

        /* 
                1.target:需要被替换的目标索引
                2.start(未指定)：默认就是到数组的开始位置 0
                3.end（未指定）：默认就是到数组结束的位置 array1.length
                相当于  array1.copyWithin(1，0，5)
         */
        // console.log(array1.copyWithin(1))



        //entries() 方法返回一个新的数组迭代器 (en-US)对象，该对象包含数组中每个索引的键/值对。
        const array1 = ['a', 'b', 'c'];
        const ieterator1 = array1.entries()
        /*       console.log(ieterator1)
          let obj1 = ieterator1.next()
          console.log(obj1)   //{value: Array(2), done: false}
          console.log(obj1.value)   //[0, 'a']

          let obj2 = ieterator1.next()
          console.log(obj2)   //{value: Array(2), done: false}
          console.log(obj2.value)   // [1, 'b']

          let obj3 = ieterator1.next()
          console.log(obj3)   //{value: Array(2), done: false}
          console.log(obj3.value[0])   //  2  0索引是2的键值对
          console.log(obj3.value[1])   //  c  1索引是c */


        //需求：获取所有的值
        for (const [index, element] of ieterator1){
            console.log(index,element)
        }
    </script>
</head>

<body>

</body>

</html>